Method and system for providing business intelligence based on user behavior

ABSTRACT

Disclosed is a computer implemented method of providing business intelligence based on user behavior. The method may include a step of receiving a user identifier associated with the user from a requesting entity, such as a server computer. Further, the method may include a step of identifying an anonymous identifier corresponding to the user identifier. Additionally, the method may include a step of retrieving anonymous user behavior data based on the anonymous identifier. Furthermore, the method may include a step of transmitting the anonymous user behavior data to the requesting entity. Accordingly, the anonymous user behavior data may be used by the requesting entity to, for example, to enrich data, such as CRM data, of the user with the anonymous user behavior data.

RELATED APPLICATIONS

Under provisions of 35 U.S.C. §119(e), the Applicant claims the benefitof U.S. provisional application No. 62/173,071, filed Jun. 9, 2015,which is incorporated herein by reference.

The following related U.S. patent applications, filed on even dateherewith in the name of Clickagy, LLC, assigned to the assignee of thepresent application, are hereby incorporated by reference:

-   -   Attorney Docket No. E279P.001US01, entitled “METHOD, SYSTEM AND        COMPUTER READABLE MEDIUM FOR CREATING A PROFILE OF A USER BASED        ON USER BEHAVIOR;”    -   Attorney Docket No. E279P.001US03, entitled “METHOD AND SYSTEM        FOR CREATING AN AUDIENCE LIST BASED ON USER BEHAVIOR DATA;” and    -   Attorney Docket No. E279P.001US04, entitled “METHOD AND SYSTEM        FOR INFLUENCING AUCTION BASED ADVERTISING OPPORTUNITIES BASED ON        USER CHARACTERISTICS.”

It is intended that each of the referenced applications may beapplicable to the concepts and embodiments disclosed herein, even ifsuch concepts and embodiments are disclosed in the referencedapplications with different limitations and configurations and describedusing different examples and terminology.

FIELD OF DISCLOSURE

The present disclosure generally relates to providing businessintelligence based on user behavior. More specifically, the presentdisclosure relates to a method and system for enriching data of users,such as CRM data, with anonymous user behavior data.

BACKGROUND

Individuals and companies often use data derived from the Internet tooptimize business strategies. For example, data derived from theInternet may be used to study demographics, psychographics, marketbehavior, competitor affinity, targeted marketing, and expandingmarkets. For example, companies often use market data to best markettheir products and services. Moreover, companies often use targetedmarketing to specific individuals to try to improve marketingeffectiveness.

When consumers visit a website, the pages they visit, the amount of timethey view each page, the links they click on, the searches they make andthe things that they interact with, allow sites to collect that data,and other factors, create a ‘profile’ that links to that visitor's webbrowser. As a result, companies can use this data to create definedaudience segments based upon visitors that have similar profiles. Whenvisitors return to a specific site or a network of sites using the sameweb browser, those profiles can be used to allow advertisers to positiontheir online ads in front of those visitors who exhibit a greater levelof interest and intent for the products and services being offered. Onthe theory that properly targeted ads will fetch more consumer interest,the publisher (or seller) can charge a premium for these ads over randomadvertising or ads based on the context of a site.

Behavioral marketing can be used on its own or in conjunction with otherforms of targeting based on factors like geography, demographics orcontextual web page content. While there is an abundance of data fromglobal Internet use, much of the data is unavailable due to privacylaws. The information that is available is often too general to beuseful and does not provide adequate resolution.

BRIEF OVERVIEW

A business intelligence provisioning platform may be provided. Thisbrief overview is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This brief overview is not intended to identify keyfeatures or essential features of the claimed subject matter. Nor isthis brief overview intended to be used to limit the claimed subjectmatter's scope.

According to some embodiments, one objective of the businessintelligence platform (also reference to as “the platform”) to provideanonymous user behavior data to requesting entities, such as a servercomputer.

Accordingly, the platform may be configured to collect anonymous userbehavior data of users from a variety of sources. For example, as usersaccess webpages on different websites, the web servers hosting thewebsites may collect user behavior data, for instance, using cookies.Further, the platform may be configured to communicate with eachwebserver to obtain the user behavior data. However, in some instances,each webserver may be configured to render the user behavior dataanonymous in order to protect the privacy of the users. Accordingly, theplatform may receive the anonymous user behavior data from eachwebserver. Further, using a technique, such as for example, cookiesyncing, the platform may be configured to aggregate anonymous userbehavior data corresponding to a particular user across differentsources.

For instance, each webserver may be configured to generate an anonymousidentifier corresponding to a user by performing a one way mapping, suchas for example, one-way hashing of a user identifier, such as an emailaddress. Accordingly, by employing a common one way mapping, anonymoususer behavior data generated at different websites may be correlated andaggregated as anonymous user behavior data related to a particular user.

Further, in order to provision the anonymous user behavior data, theplatform may be configured to receive a request for anonymous userbehavior data corresponding to a user. Further, the request may includea user identifier. Additionally, in some instances, the request mayinclude a plurality of user identifiers corresponding to a plurality ofusers. Upon receiving the request, the platform may identify acorresponding anonymous identifier using the one way mapping.Accordingly, based on the anonymous identifier, corresponding anonymoususer behavior data may be identified and retrieved from a databaseincluded in the platform. Subsequently, the platform may transmit theanonymous user behavior data to the requesting entity.

In some instances, the requesting entity may include a CustomerRelationship Management (CRM) database. Further, the CRM database mayinclude specific data associated with the user, such as for example,first name, last name, phone number, postal address, products purchased,services subscribed to and so on. In some instances, the data includedin the CRM data may be obtained from offline sources such as, forexample, a brick and mortar store where a product was purchased.

Accordingly, upon receiving the anonymous user behavior data of theuser, the requesting entity may enrich the CRM database with theanonymous user behavior data. For instance, the anonymous user behaviordata may include keywords indicating interests of the user, such as, forexample, brands, products and services. Additionally, the anonymous userbehavior data may include affinity values corresponding to the keywords.An affinity value of a keyword may indicate a relative measure of theuser's interest with regard to the keyword. Accordingly, the CRMdatabase may be populated with rich data of users providing greaterbusiness intelligence and insights for the users of the CRM database.

Further, in some embodiments, the platform may be configured to matchspecific data of a user, for example, data available in the CRM databasewith the anonymous user behavior data. In other words, the platform maybe configured to correlate data from the CRM database with the anonymoususer behavior data in order to identify an association between data of auser in the CRM database and anonymous user behavior data correspondingto the user. Accordingly, in an instance, the platform may receive atleast a portion of data from the CRM database. For example, the CRMdatabase may include demographic data of the user, such as age,location, educational qualifications, employment details and so on.Further, the anonymous user behavior data may also include correspondingdemographic data for each user. Accordingly, by correlating demographicdata in the CRM database with the demographic data included in theanonymous user behavior data, the platform may be able to build anassociation between data in CRM database and the anonymous user behaviordata. Accordingly, anonymous user behavior data corresponding to aparticular user and/or a group of users may be identified andprovisioned.

Further, in some embodiments, by comparatively analyzing specific dataof users with the anonymous user behavior data, customer churn may bepredicted. For example, based on specific data available in the CRMdatabase, a product and/or a service used by the user may be identified.Further, based on the anonymous user behavior data, an interestedproduct and/or an interested service may be identified. Subsequently, bycomparing data of the product and/or the service with that of theinterested product and/or the interested service the customer churn maybe predicted.

Alternatively and/or additionally, in some embodiments, the platform mayalso be configured to predict churn. Accordingly, in some instances, theplatform may receive a request for churn prediction. Further, theplatform may be configured to analyze the anonymous user behavior datato identify an interested product and/or an interested service.Furthermore, the anonymous user behavior data may include contextualdata such as, for example, data indicative of the user device used toaccess webpages. Accordingly, by comparing the contextual data with thedata indicative of the interested product and/or the interested service,the platform may be able to predict churn. For instance, the anonymoususer behavior data may indicate that an android smartphone was used toaccess webpages about iPhone on several websites. This may indicate astrong interest of the user towards iPhone. Accordingly, the platformmay predict, with a measure of likelihood, churn of the user from theandroid device to iPhone. Such churn prediction may enable an operatorthe requesting entity, such as mobile device manufacturer, to identify abusiness opportunity and take actions, such as, for example, providingtargeted advertisements of iPhone to the user that have a higher rate ofconversion into sale.

Both the foregoing brief overview and the following detailed descriptionprovide examples and are explanatory only. Accordingly, the foregoingbrief overview and the following detailed description should not beconsidered to be restrictive. Further, features or variations may beprovided in addition to those set forth herein. For example, embodimentsmay be directed to various feature combinations and sub-combinationsdescribed in the detailed description.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of this disclosure, illustrate various embodiments of the presentdisclosure. The drawings contain representations of various trademarksand copyrights owned by the Applicants. In addition, the drawings maycontain other marks owned by third parties and are being used forillustrative purposes only. All rights to various trademarks andcopyrights represented herein, except those belonging to theirrespective owners, are vested in and the property of the Applicants. TheApplicants retain and reserve all rights in their trademarks andcopyrights included herein, and grant permission to reproduce thematerial only in connection with reproduction of the granted patent andfor no other purpose.

Furthermore, the drawings may contain text or captions that may explaincertain embodiments of the present disclosure. This text is included forillustrative, non-limiting, explanatory purposes of certain embodimentsdetailed in the present disclosure. In the drawings:

FIG. 1 illustrates a block diagram of an operating environmentconsistent with the present disclosure;

FIG. 2 is a flow chart of a method for creating a user profile based onuser behavior according to some embodiments;

FIG. 3 a flow chart of a method of providing anonymous user behaviordata according to some embodiments;

FIG. 4 a flow chart of a method of predicting churn based on anonymoususer behavior data according to some embodiments;

FIG. 5 a flow chart of a method of correlating anonymous user behaviordata with data associated with known users according to someembodiments;

FIG. 6 a flow chart of a method of providing anonymous user behaviordata according to some embodiments;

FIG. 7 illustrates exemplary business intelligence related to a userprovided based on anonymous user behavior data according to someembodiments;

FIG. 8 illustrates an online user behavior of a user based on which auser profile may be created in accordance with some embodiments;

FIG. 9 illustrates an exemplary comprehensive user browsing data basedon which a user profile may be created in accordance with someembodiments;

FIG. 10 illustrates Natural Language Processing performed on dataextracted from webpages visited by a user based on which a user profilemay be created in accordance with some embodiments; and

FIG. 11 is a block diagram of a system including a computing device forperforming the methods of FIG. 2 to FIG. 6.

DETAILED DESCRIPTION

As a preliminary matter, it will readily be understood by one havingordinary skill in the relevant art that the present disclosure has broadutility and application. As should be understood, any embodiment mayincorporate only one or a plurality of the above-disclosed aspects ofthe disclosure and may further incorporate only one or a plurality ofthe above-disclosed features. Furthermore, any embodiment discussed andidentified as being “preferred” is considered to be part of a best modecontemplated for carrying out the embodiments of the present disclosure.Other embodiments also may be discussed for additional illustrativepurposes in providing a full and enabling disclosure. As should beunderstood, any embodiment may incorporate only one or a plurality ofthe above-disclosed aspects of the display and may further incorporateonly one or a plurality of the above-disclosed features. Moreover, manyembodiments, such as adaptations, variations, modifications, andequivalent arrangements, will be implicitly disclosed by the embodimentsdescribed herein and fall within the scope of the present disclosure.

Accordingly, while embodiments are described herein in detail inrelation to one or more embodiments, it is to be understood that thisdisclosure is illustrative and exemplary of the present disclosure, andare made merely for the purposes of providing a full and enablingdisclosure. The detailed disclosure herein of one or more embodiments isnot intended, nor is to be construed, to limit the scope of patentprotection afforded in any claim of a patent issuing here from, whichscope is to be defined by the claims and the equivalents thereof. It isnot intended that the scope of patent protection be defined by readinginto any claim a limitation found herein that does not explicitly appearin the claim itself.

Thus, for example, any sequence(s) and/or temporal order of steps ofvarious processes or methods that are described herein are illustrativeand not restrictive. Accordingly, it should be understood that, althoughsteps of various processes or methods may be shown and described asbeing in a sequence or temporal order, the steps of any such processesor methods are not limited to being carried out in any particularsequence or order, absent an indication otherwise. Indeed, the steps insuch processes or methods generally may be carried out in variousdifferent sequences and orders while still falling within the scope ofthe present invention. Accordingly, it is intended that the scope ofpatent protection is to be defined by the issued claim(s) rather thanthe description set forth herein.

Additionally, it is important to note that each term used herein refersto that which an ordinary artisan would understand such term to meanbased on the contextual use of such term herein. To the extent that themeaning of a term used herein—as understood by the ordinary artisanbased on the contextual use of such term—differs in any way from anyparticular dictionary definition of such term, it is intended that themeaning of the term as understood by the ordinary artisan shouldprevail.

Regarding applicability of 35 U.S.C. §112, ¶6, no claim element isintended to be read in accordance with this statutory provision unlessthe explicit phrase “means for” or “step for” is actually used in suchclaim element, whereupon this statutory provision is intended to applyin the interpretation of such claim element.

Furthermore, it is important to note that, as used herein, “a” and “an”each generally denotes “at least one,” but does not exclude a pluralityunless the contextual use dictates otherwise. When used herein to join alist of items, “or” denotes “at least one of the items,” but does notexclude a plurality of items of the list. Finally, when used herein tojoin a list of items, “and” denotes “all of the items of the list.”

The following detailed description refers to the accompanying drawings.Wherever possible, the same reference numbers are used in the drawingsand the following description to refer to the same or similar elements.While many embodiments of the disclosure may be described,modifications, adaptations, and other implementations are possible. Forexample, substitutions, additions, or modifications may be made to theelements illustrated in the drawings, and the methods described hereinmay be modified by substituting, reordering, or adding stages to thedisclosed methods. Accordingly, the following detailed description doesnot limit the disclosure. Instead, the proper scope of the disclosure isdefined by the appended claims. The present disclosure contains headers.It should be understood that these headers are used as references andare not to be construed as limiting upon the subjected matter disclosedunder the header.

The present disclosure includes many aspects and features. Moreover,while many aspects and features relate to, and are described in, thecontext of data mining for marketing purposes, embodiments of thepresent disclosure are not limited to use only in this context. Forexample, the platform may be used to study demographics, psychographics,market behavior, competitor affinity, and expanding markets.

I. PLATFORM OVERVIEW

Consistent with embodiments of the present disclosure, a businessintelligence provisioning platform may be provided. This overview isprovided to introduce a selection of concepts in a simplified form thatare further described below. This overview is not intended to identifykey features or essential features of the claimed subject matter. Nor isthis overview intended to be used to limit the claimed subject matter'sscope.

A platform consistent with embodiments of the present disclosure may beused by individuals or companies to determine, with relative accuracy,statistics about individuals using the Internet and groups of suchindividuals. Such statistics may be used by the platform to predict, forexample, but not limited to, an individual or group of individuals'personal and commercial behavior. As a non-limiting, illustrativeexample, the platform may be used by a washing machine company to, forexample, determine which individuals are likely to be purchasing a newwashing machine, and which brands they are most likely to purchase basedon webpages that they visit.

Embodiments of the present disclosure may operate in a plurality ofdifferent environments. For example, in a first aspect, the platform mayreceive notice that an individual has visited a webpage. Then, theplatform may crawl that page to gather raw data from the page. Forexample, the platform may use various algorithms, including, but notlimited to, for example, natural language processing (NLP) and digitalsignal processing (audio/image/video data) to search the web page forkey words or phrases.

Still consistent with embodiments of the present disclosure, theplatform may receive raw data as it tracks individuals throughout, forexample, an ad network or collection of ad networks. Tracking mayinclude, for example, but not be limited to, a crawling of each visitedwebpage so as to create a profile for the page. As will be furtherdetailed below, the profile may be generated by, for example, theaforementioned algorithms used to gather raw data for the page.

Accordingly, in some embodiments, interaction of a user with a pluralityof servers, such as for example, content servers, ad servers and so onmay be monitored. For instance, when the user visits a webpage providedby a server, a tracking cookie may be instantiated in order to saveinformation regarding the user and/or the user's interaction with thewebpage. For instance, the tracking cookie may be instantiated at theserver side and may include information such as a timestampcorresponding to the user's visiting of the webpage and one or moreidentifiers associated with the user. The one or more identifiers may befor example, a network identifier such as an Internet Protocol (IP)number and/or a MAC number, a device identifier such as an IMEI number,a software environment identifier, such as OS name, browser name etc.,user identifiers such as email address, first name, last name, middlename, postal address etc. and values of contextual variables such as GPSlocation of the device used to access the webpage, sensor readings ofthe device while accessing the webpage and so on.

In some embodiments, the one or more identifiers, such as the IMEInumber, may uniquely identify the user while preserving anonymity of theuser.

In other embodiments, the one or more identifiers may be subjected toencryption or a one way hashing in order to render the one or moreidentifiers unreadable to other users while maintaining the ability ofthe one or more identifiers to uniquely identify the user. For example,in some instances, tracking cookie may be instantiated on a client side,where the tracking cookie may reside on a user device, such as asmartphone or a laptop computer. Accordingly, any information collectedby the tracking cookie may remain accessible in human readable form onlywithin the user device. However, prior to transmitting the trackingcookie to the server side, the information collected may be subjected tohashing. Accordingly, in some embodiments, information about the user inhuman readable form may not be available at the server side. Thus, usersmay be ensured of preserving their privacy.

Further, in some embodiments, each of the plurality of servers may adopta common hashing algorithm such that each of the plurality of serversmay compute a common hash value for the one or more identifiers.Accordingly, when information in the tracking cookies from each of theplurality of servers is transmitted to the platform, the informationcollected by multiple tracking cookies may be identified as beingassociated with the same user based on the common hash value. Such atechnique may allow tracking the user across multiple servers accessedby the user through a common user device.

In yet further embodiments of the present disclosure, the raw data maybe from purchased data acquired by data aggregators. The raw data mayinclude, for example, a plurality of device specific information (e.g.,device serial number, IP address, and the like) along with a listing ofwebsites accessed by the device. The platform may be enabled to identifya plurality of devices associated with a single individual and,subsequently, associated the data aggregated and processed for eachdevice to a single individual profile.

For instance, in some embodiments, where the user may access the sameand/or different servers through multiple user devices, a correlation ofthe information collected by the multiple cookies may be performed inorder to track the user. For instance, each of the multiple trackingcookies may not include all of the one or more identifiers. For example,the user may access a webpage of a server using a smartphone, while theuser may access a webpage of another server using a laptop computer atwork. Further, the laptop computer may include additional restrictionsthat forbid the tracking cookie from collecting some of the one or moreidentifiers. However, at least some of the information collected by themultiple cookies may still be common. Accordingly, by correlatinginformation across the multiple tracking cookies, it may be ascertainedthat the multiple tracking cookies are associated with the same user.Further, in some embodiments, a threshold of correlation value may beestablished. Accordingly, the multiple tracking cookies may bedetermined to be associated with the user only if a correlation valueexceeds the threshold.

The platform may then apply the aforementioned algorithms to process thewebsites accessed by the devices and, in this way, profile the websitesas will be detailed below. The profiled website may then be used tocharacterize an individual who has been detected to access the profiledwebsite. Moreover, and as will be further detailed below, thecharacterized individual data may then be grouped along with otherindividuals' data assessed by the platform in a plurality of waysincluding, but not limited to, geographic, household, workplace,interests, affinities, gender, age, and the like.

It should be understood that each individual analyzed by the platform ofthe present disclosure may be weighted with an ‘affinity’ ofrelationship to a particular category. For example, for thoseindividuals who have visited websites profiled to be more ‘female’friendly may be determined, by the platform, to be most likely a‘female’ based on, either solely or at least in part, the individualsweb-traffic of profiled webpages associated with the individuals trackeddevice.

As yet a further example, the platform may identify individuals thatvisit webpages that include the words “cell phone” and determine thatthe individuals may be more likely to be shopping for cell phones.Further, by counting the number of times the individuals visit webpagesthat have predominately iPhones versus webpages that have predominatelyAndroid phones, the likelihood that such individuals prefer one phone tothe other may be assessed. The platform may group like users to createuseful statistical data. For example, the platform may create groups ofpeople that are most likely willing to purchase a specific product(e.g., cell phones, or, more specifically, Android smartphones).

Embodiments of the platform may further be used to enable a platformuser (e.g., mobile telecommunications company) to better understand itstarget market. Accordingly, data that has been acquired, aggregated, andprocessed by the platform may be provided to the user. For example anapplication program interface (API) may provide statistics about singleindividuals (e.g., likelihood that an individual prefers Android phonesto iPhones), or groups of individuals (e.g., which individuals preferAndroid phones to iPhones). Such statistics may be provided in, forexample, lists, charts, and graphs. Further, searchable and sortable rawdata may be provided. In some embodiments, the data may be provided tolicensed users. For example, users that have identified data such as,for example, AT&T, which has a list of known individuals, may use thedata to, for example, further market to their known list of individualsor predict churn.

In some embodiments, the processed data may be provided to the user as aplug-in. For example, if an individual logs into a website for the firsttime (e.g., Home Depot), the website owner may be able to customize thedisplay for the first-time individual. In other embodiments, theplatform may integrate with a customer relationship module (CRM). Inthis way, the CRM may be automatically updated with processed data forindividuals in the CRM.

Both the foregoing overview and the following detailed descriptionprovide examples and are explanatory only. Accordingly, the foregoingoverview and the following detailed description should not be consideredto be restrictive. Further, features or variations may be provided inaddition to those set forth herein. For example, embodiments may bedirected to various feature combinations and sub-combinations describedin the detailed description.

II. PLATFORM CONFIGURATION

FIG. 1 illustrates one possible operating environment through which aplatform consistent with embodiments of the present disclosure may beprovided. By way of non-limiting example, a platform 100 may be hostedon a centralized server 110, such as, for example, a cloud computingservice. A user 105 may access platform 100 through a softwareapplication. The software application may be embodied as, for example,but not be limited to, a website, a web application, a desktopapplication, and a mobile application compatible with a computing device1100. One possible embodiment of the software application may beprovided by Clickagy, LLC.

As will be detailed with reference to FIG. 11 below, the computingdevice through which the platform may be accessed may comprise, but notbe limited to, for example, a desktop computer, laptop, a tablet, ormobile telecommunications device. Though the present disclosure iswritten with reference to a mobile telecommunications device, it shouldbe understood that any computing device may be employed to provide thevarious embodiments disclosed herein.

A user 105 may provide input parameters to the platform. For example,input parameters may be certain device IDs. As another example, inputparameters may include individuals living in Atlanta, Ga. Inputparameters may be passed to server 110. Server 110 may further beconnected to various databases, such as, for example, purchased data120, tracking data 125 and CRM data 130. In some embodiments, the CRMmay be associated with the user. For example, user's CRM database mayinterface with the platform.

Information relevant to individuals associated with the inputparameters, such as, for example, which websites they visited, may besent to web crawler 115. Web crawler 115 may search webpages and onlinedocuments visited by individuals being tracked and gather dataassociated with the searched webpages and online documents. For example,web crawler 115 may utilize natural language processing and audio, videoand image processing to gather information for websites. Web crawler 115may further perform algorithms and build profiles based on webpages andonline documents being searched, such as, for example, constructing‘affinities’ for websites (further discussed below). Information andwebsite and online document profiles being tracked may be passed back toserver 110. Server 110 may further construct profiles for individualsbeing tracked and groups of individuals being tracked. The individualand group profiles as well as further data (e.g. personally identifiableinformation (PPI), non-PPI, de-identified data andwebsite/individual/group affinity) may be returned to user 105.

User 105 may then use the returned data. For example, user 105 may mergethe individual and group profiles with their own data. In someembodiments, user 105 may license the data to other individuals orcompanies. In further embodiments, user 105 may receive data in a visualform, such as, for example, on a dashboard containing tables, graphs,and charts summarizing the data. In some embodiments, received data maybe integrated with a user CRM database. Further, in some embodiments,the received data may be utilized by an API. For example, a plug-in mayutilize the received data for identifying individuals (and theirassociated information, affinities and preferences) that visit a user'swebsite for the first time.

III. PLATFORM OPERATION

FIG. 2 to FIG. 6 are flow charts setting forth the general stagesinvolved in methods 200 to 600 consistent with some embodiments of thedisclosure. Methods 200 to 600 may be implemented using a computingdevice 1100 as described in more detail below with respect to FIG. 11.

Although methods 200 to 600 have been described to be performed byplatform 100, it should be understood that computing device 1100 may beused to perform the various stages of methods 200 to 600. Furthermore,in some embodiments, different operations may be performed by differentnetworked elements in operative communication with computing device1100. For example, server 110 may be employed in the performance of someor all of the stages in methods 200 to 600. Moreover, server 110 may beconfigured much like computing device 1100. Furthermore, in someembodiments, some of the methods 200 to 600 may be performed by arequesting entity in communication with the platform 100, such as a CRMdatabase including CRM data 130.

Although the stages illustrated by the flow charts are disclosed in aparticular order, it should be understood that the order is disclosedfor illustrative purposes only. Stages may be combined, separated,reordered, and various intermediary stages may exist. Accordingly, itshould be understood that the various stages illustrated within the flowchart may be, in various embodiments, performed in arrangements thatdiffer from the ones illustrated. Moreover, various stages may be addedor removed from the flow charts without altering or deterring from thefundamental scope of the depicted methods and systems disclosed herein.Ways to implement the stages of methods 200 to 600 will be described ingreater detail below.

Method 200 may begin at starting block 205 and proceed to stage 210where platform 100 may receive data from an individual's internet use.For example, the platform may receive information about a webpage thatthe individual visited or a Microsoft Word document or PDF that anindividual downloaded. Information may include the URL of the webpage.Further information may be received, including IP address of theindividual, search history of the individual, and geolocation of theindividual.

From stage 210, where platform 100 receives data from an individual'sInternet use, method 200 may advance to stage 220 where platform 100 mayfurther gather information associated with the individual's Internetuse. For example, the platform may crawl the webpage that the individualvisited. For example, the platform may search for specific key words orphrases. In some embodiments, if the webpage has already been crawled,the webpage may be skipped.

During the crawl, the platform may perform, for example, naturallanguage processing (NLP) to further process the context of the wordsand phrases in the text. In addition, the platform may utilize imagerecognition, audio recognition, and/or video recognition to gather dataabout the individual's Internet use. For example, images may be scannedwith optical character recognition (OCR). The OCR scanning may generatewords or phrases for characterizing the webpage. Further, imagerecognition software may be used to characterize the webpage. Forexample, artificial intelligence (AI) software may be used to determinewhether an image is showing for example, a dog or a tree. Audio filesfrom the webpage may be scanned, using, for example, voice recognitionsoftware, to further provide information to characterize the webpage.Video files from a page may be converted to a series of images fromperiodic individual frames and scanned in the same manner as an image.In addition, the audio associated with the video may be scanned toprovide data about the webpage. Likewise, text from the webpage may alsobe extracted and analyzed based on NLP. The combination of text, image,audio and video recognition may provide a human-style “view” of what thewebpage provides. The human-style “view” may enable the platform tooptimize characterization of the webpage.

Information that is acquired from the crawl may further be associatedwith how recently such information was associated with the webpage(e.g., newer information may be given a higher relevance than olderinformation). The platform may receive further information, for example,that is purchased from various data aggregators (e.g., aggregators thattrack specific IDs.) In addition, information may be tracked from anexisting individual base. For example, if the individual clicks (“IAgree”) on certain terms and conditions, the platform may place atracking cookie on the individual's device to further gatherinformation. In some embodiments, stages 210 and 220 may comprise 207,where platform 100 receives general data. The general data may include,for example, data from webpages (e.g., text, image, audio, and videodata associated with the webpage) and data from individuals (e.g., whichwebsites the individuals have visited, information from the individuals'social media profiles, and the like).

Once platform 100 further gathers information associated with theindividual's Internet use in stage 220, method 200 may continue to stage230 where platform 100 may analyze the information. In some embodiments,the platform may perform natural language processing (NLP) as well asimage, audio and video recognition to analyze the information. Forexample, the platform may use specific keywords and phrases, as well askeywords associated with image, video and audio files, found on eachwebpage and attach a plurality of ‘affinities’ to each page. Forexample, for a news article about iPhones, the platform may returnhundreds of ‘keywords’, including “Apple” with 94% affinity, “cellphone” with 81% affinity, and “screen” with 52% affinity. The platformmay then interpret the information based on the individual's Internetuse to create a profile associated with the affinities.

For example, an individual may visit a number of webpages that have highaffinity for keywords like “truck”, “football”, and “Scotch”. Such anindividual may be statistically more likely to be a male. As anotherexample, another individual may visit a number of webpages that havehigh affinity for keywords like “nail polish”, “Midol”, and “Pinterest.”Such an individual may be statistically more likely to be female. Suchstatistical predictions may be associated with a confidence level.Further, statistical predictions may be made for an abundance of othercharacteristics, such as, for example, but not limited to, age, maritalstatus, parental status, approximate household income, industry ofemployment, sport preference, automobile preference, and phonepreference.

After platform 100 analyzes the information for each individual in stage230, method 200 may proceed to stage 240 where platform 100 may groupusers based on certain characteristics. For example, individuals likelyto be of a certain characteristic, such as, for example, gender, age,marital status, parental status, approximate household income, andindustry of employment, may be grouped together. Additionally,individuals may be grouped together based on their preferences, such as,for example, sport preference, automobile preference, and phonepreference.

Further, in some embodiments, individuals may be grouped. For example,using logic functions (e.g., AND, OR, and NOT), individuals of aspecific type may be grouped and sorted. Accordingly, a group profilecorresponding to a plurality of users may be created. Further, the groupprofile may include a plurality of keywords and a correspondingplurality of group affinity values. A group affinity value of a keywordmay be based on aggregation of affinity values of the keyword associatedwith the plurality of users. For instance, as shown, the plurality ofusers may correspond to a group of website visitors, list of emailrecipients, marketing audience, paying customers and so on.

Further, each user may be associated with a user profile comprisingkeywords, corresponding affinity values and one or more othercharacteristics such as demographic characteristics. Additionally, insome embodiments, one or more of keywords, corresponding affinity valuesand demographic characteristics may be determined based on analysis ofthe webpages visited by the users.

According to some embodiments, a method 300 of providing businessintelligence based on user behavior may be provided as illustrated inFIG. 3. The method 300 may be a computer implemented method.Accordingly, one or more steps of the method 300 may be performedautomatically by a computer.

The user behavior may include for example, online activity performed bythe user such as viewing webpages, online shopping, downloading contentfrom the internet, uploading content to the internet and interactingwith a desktop application and/or a mobile application. An exemplaryonline user behavior data based on which a user profile may be createdis illustrated in FIG. 8.

The method may include a step 310 of receiving a user identifierassociated with a user from a requesting entity. In general, the useridentifier may be data of any form that may uniquely identify a user.For example, the user identifier may be a text string such as, a name, aphone number, an email address, an IMEI number, and IP number, a deviceserial number and so on. Alternatively, the user identifier may alsoinclude a biometric feature of the user, such as a voice sample,fingerprint and so on.

In some instances, the user identifier may be such that the user'spersonal details may not be identifiable by general public based only onthe user identifier. For instance, an IMEI number of a smartphonepurchased by a user may be associated with personal details about theuser. However, such information is kept private by themanufacturer/distributor of the smartphone. Accordingly, mere possessionof the IMEI number by another party may not compromise the privacy ofthe user. As another example, a personal email address of the user mayalso be such that the user's personal details may not be identifiablefrom the personal email address. For example, the personal email addressmay not be correlatable with personal information of the user availablefrom other data sources, in case the personal information does notinclude the personal email address.

However, in some other instances, the user identifier may be such thatthe user's personal details may be identifiable from the user identifieritself and/or by querying other data sources. For instance, the useridentifier may include the first name and last name of the user. Asanother example, the user identifier may include the official emailaddress of the user. Further, personal details of the user may bepublicly available along with the official email address on a companyprofile page of the user. Accordingly, in some instances, possession ofthe user identifier may enable one to determine the personal details ofthe user by querying the company profile page.

Further, in some embodiments, the requesting entity may be a servercomputer. Additionally, in some embodiments, the data associated withthe user may be included in a Customer Relationship Management (CRM)database executable on the server computer. For instance, the servercomputer may be operated by companies who may want access to theanonymous user behavior data in order to understand interests of usersso that, for example, more relevant and targeted marketing may beperformed.

Further, the method 300 may include a step 320 of identifying ananonymous identifier corresponding to the user identifier. The anonymousidentifier may in general be such that personal details of the user maynot obtained from only the anonymous identifier. In other words, theanonymous identifier may, in some instances, enable the platform or anyother computer system to uniquely identify the user among other users.However, no personal details of the user may be derivable based only onthe anonymous identifier.

Further, in some embodiments, the anonymous identifier may be identifiedbased on operating a one-way hash function on the user identifier.Accordingly, the user identifier may not be recoverable from theanonymous identifier due to the nature of the one-way hash function.Consequently, possession of the anonymous identifier in itself may notcompromise privacy of the user.

Further, the method 300 may include a step 330 of retrieving anonymoususer behavior data based on the anonymous identifier. For instance, theplatform may include a database including anonymous user behavior datacorresponding to a plurality of users. Accordingly, the database may bequeried with the anonymous identifier as a key in order to retrieve theanonymous user behavior data of the user.

Further, in some embodiments, retrieving the anonymous user behaviordata may include retrieving data from a plurality of cookiescorresponding to a plurality of websites. For example, the method mayinclude communicating with a plurality of webservers in order to receivedata from cookies corresponding to the user from each of the pluralityof webservers. Further, the database included in the platform may bepopulated with the data from the cookies.

Furthermore, in some embodiments, each cookie may include at least aportion of the anonymous user behavior data. Furthermore, in someembodiments, each cookie may be associated with the anonymousidentifier. As a result, data from the plurality of cookies may beidentified as corresponding to the same user.

Further, in some embodiments, the anonymous user behavior data may bebased on online activity of user. In general online activity may be anyactivity performed by the user on a network, such as for example, theInternet. For instance, the online activity may include visiting awebpage, downloading and/or uploading content from the internet and soon. Alternatively and/or additionally, in some embodiments, theanonymous user behavior data may be based on offline activity of theuser, such as for example, interactions of the user with applicationsexecuting on a user device. Accordingly, data associated with theinteractions may be captured and included in the anonymous user behaviordata.

Further, in some embodiments, the anonymous user behavior data mayinclude contextual data corresponding to the online activity. Ingeneral, the contextual data may represent a state of one or more of theuser, a user device, an environment of the user and/or the user device,data generated and/or captured by other devices in the vicinity of theuser and/or the user device and so on.

Further, in some embodiments, the contextual data may correspond to oneor more user devices used by the user to perform the online activity.For instance, the user may use a variety of user devices such as, forexample, laptop computer, desktop computer, tablet computer, smartphoneand so on to visit webpages over a period of time and at differentplaces such as home, office, restaurants, on-road and so on.Accordingly, contextual data corresponding to one or more of the userdevices may be captured and associated with the anonymous user behaviordata of the user.

Further, in some embodiments, the contextual data may include devicedata representing the at least one user device. In general, the devicedata may include any data captured by the user device or any otherdevice in communication with the user device. For example, the devicedata may include information regarding the hardware and/or the softwareconfiguration of the user device. Further, the device data may alsoinclude a state of operation of the user device. The state of operationmay include for example, applications currently executing on the userdevice, amount of processor availability, amount of available storage,battery level and so on.

Further, in some embodiments, the device data may include one or more ofa device identifier associated with a user device, a network identifierassociated with a communication network used for performing the onlineactivity, an Operating System (OS) identifier of an OS installed on theuser device and a browser identifier of a browser installed on the userdevice. In some cases, the device data may be such that a correspondinguser may be uniquely identifiable. For example, an IMEI number or astatic IP address may uniquely identify a user. In other cases, thedevice data may be such that a small group of similar users may beidentifiable. For instance, a combination of geolocation, device type,OS, browser type may enable identification of a set of similar users whomay be proximally located. Accordingly, knowledge of such users mayenable companies to target marketing campaigns, such as distributingflyers, in the location focusing on the set of users.

Further, in some embodiments, the contextual data may include sensordata representing state of the at least one user device duringperformance of the online activity. For instance, sensor data from alocation sensor such as a GPS receiver may be captured while a user isvisiting a webpage. Similarly, motion data from an accelerometer may becaptured to indicate whether the user was in a state of rest or ofmotion while visiting a webpage. Likewise, the sensor data may alsoinclude environmental information such as temperature, pressure, and soon. Accordingly, the sensor data may provide another dimension forcategorizing the anonymous user behavior data. For instance, such datamay enable identification of anonymous user behavior data of a veryspecific set of users, for example, those traveling by a metro rail.

Further, in some embodiments, the anonymous user behavior data mayinclude at least one of demographic data and psychographic data of theuser.

Further, in some embodiments, the anonymous user behavior data mayinclude at least one interest of the user. For instance, the at leastone interest may be towards a topic, a subject, a person, an event, aproduct/service and so on. In some embodiments, the at least oneinterest may be inferred based on content searched for and/or contentconsumed. For example, search keywords provided by the user may becaptured and one or more interests may be inferred based on the searchkeywords. Similarly, keywords from content, such as webpages relating toa particular topic, may be captured and used to infer an interest of theuser towards the topic.

Further, in some embodiments, the anonymous user behavior data mayinclude a plurality of keywords representing the at least one interestand a plurality of affinity values corresponding to the plurality ofkeywords. For instance, an exemplary set of keywords identified for auser based on the user's interaction with various webpages isillustrated in FIG. 9. For example, based on the user's visiting of awebpage related to sports news, the keywords “Football” and “Basketball”may be identified and associated with the user. Accordingly, theplurality of keywords may indicate one or more topics of interest to theuser. For instance, the plurality of keywords may be extracted fromwebpages visited by the user. Accordingly, the method 200 may beperformed to extract the plurality of keywords from webpages. Further,each keyword may be associated with an affinity value that indicates arelative importance of the keyword to the user. For example, the usermay have visited multiple webpages, each of which may include a listingtop 10 smartphones. Accordingly, multiple keywords associated with thetop 10 smartphones may be identified and extracted. However, althoughkeywords associated with all top 10 smartphones may be associated withthe user, each keyword may be assigned a different affinity valuedepending on an interest level of the user towards a particular keyword.For example, a user may have performed an interaction, such as clickinga link, on one or more of the webpages indicative of an interest towardssome of the top 10 smartphones. Accordingly, the keywords associatedwith those smartphones may be assigned relatively greater affinityvalues than other keywords.

Additionally, in some embodiments, the keywords and correspondingaffinity values may be identified based on Natural Language Processing(NLP) performed on content of the webpages visited by the user. Forinstance, as illustrated in FIG. 10, analyzing content of the webpageusing, for example, NLP may result in identification of a category ofcontent, such as “Entertainment”. Further, NLP may also identify brandaffinities of the webpage, such as for example, “Star wars” that mayprovide a greater contextual relevance and brand awareness to users.Additionally, NLP may also include event detection involvingidentification of specific time-sensitive triggers, such as for example,an upcoming “New Movie”. Further, NLP may also identify important topicsaddressed in the content of the webpage and associate those topics asconcept tags with the webpage, such as for example, “Cinema”. Further,NLP may also include entity extraction involving identifying relevantproper nouns like people and/or brands.

Further, in some embodiments, the data associated with the user mayinclude data representing at least one of a product and a serviceassociated with the user. For instance, the user may have purchased oneor more products and subscribed to one or more services. Accordingly,such data indicating the products and/or services purchased by the usermay be obtained from online and/or offline stores where the purchaseswere made. For instance, companies that sell products and/or servicesmaintain such information regarding products and/or services procured byeach of their customers in a CRM database. For example, the data mayinclude name of a product, model number of the product, year/month ofpurchase, cost and so on. Further, in some instances, the data may alsoinclude products and/or services towards which the user may haveexpressed an explicit interest. For example, the user may have enquiredabout a product and/or service through a communication channel such asemail, phone call etc. with a company. Accordingly, such informationabout explicit interests may be captured and stored in the CRM database.

Further, in some embodiments, the data associated with the user mayinclude offline data. For example, the offline data may be obtained fromother sources, such as brick and mortar stores. Accordingly, forexample, purchase information of the user related to one or moreproducts may be obtained. Similarly, offline data may be obtained frombusinesses that conduct user surveys. Accordingly, information regardinginterests and lifestyle of the user may be obtained.

Further, the method 300 may include a step 340 of transmitting theanonymous user behavior data to the requesting entity, such as theserver computer including the CRM database. Further, in someembodiments, the requesting entity may be configured for receiving theanonymous user behavior data corresponding to the user and appending theanonymous behavior data to data associated with the user stored in the adatabase, such as for example, the CRM database.

Accordingly, in some instances, the CRM database may be supplementedwith the anonymous user behavior data as exemplarily illustrated in FIG.7. As shown, initially, the CRM database may include an email address ofthe user while other details about the user may be absent (indicated byquestion marks). However, upon performing the method 200, the CRMdatabase may receive and store keywords representing the user'sinterests towards various topics, products, brands etc.

Further, in some embodiments, the method 200 may include a step ofreceiving an indication of at least one keyword. For example, a companyoperating the CRM database may transmit the user identifier along with aset of keywords in order to understand the user's affinity towards theset of keywords. Accordingly, the anonymous user behavior data mayinclude an affinity value corresponding to the set of keywords asexemplarily illustrated in FIG. 7. In addition, demographic data, suchas for example, gender, age, income, marital status etc. also may alsobe received and stored in the CRM database.

Turning now to FIG. 4, a method 400 of predicting churn in accordancewith some embodiments is illustrated. A churn of a user with respect toa product and/or service may involve procurement of an alternativeproduct and/or service by the user. In some cases, the user may switchcompletely from the product and/or service to the alternative.Accordingly, companies manufacturing and/or selling the product and/orservice may benefit from identifying users who are likely to churn.Accordingly, the companies may take one or more corrective actions inorder to minimize or eliminate the churn.

Further, prior to a user switching over to an alternative product and/orservice, the user may perform certain behavior such as searching foralternative products and/or services and reviewing information regardingparticular alternative products and/or services. Accordingly, userbehavior data may potentially include indicators of a likely churn ofusers from a product and/or a service.

Accordingly, the method 400 may include a step 410 of identifying atleast one of a product and a service used by the user based on the userbehavior data. For example, when a user visits a webpage hosted by awebserver, a cookie on the webserver may capture device datacorresponding to one or more user devices used by the user to access thewebpage. Based on the device data, an indication of products and/orservices currently used by the user may be gleaned. For instance, thedevice data may indicate that the user possesses an android smartphoneand uses AT&T internet service.

Additionally, in some embodiments, prior to performing step 410, themethod may include a step of receiving a request for a churn predictionfrom a requesting entity such as a webserver including a CRM database.

Further, the method 400 may include a step 420 of identifying at leastone of an interested product and an interested service associated withthe user based on the user behavior data. For instance, the user mayperform searches for webpages related to iPhone and visit the webpages.Accordingly, such user behavior may be captured and an implicit and/orexplicit interest of the user towards a product and/or service, such asiPhone may be identified.

Additionally, the method 400 may include a step 430 of predicting achurn based on a comparison of the at least one of a product and aservice with at least one of the interested product and the interestedservice. For example, the user behavior data may indicate that the usercurrently possess an android phone while expressing an implicit and/oran explicit interest towards iPhone. Accordingly, a difference betweenthe current product and the interested product based on the comparisonmay indicate a likelihood of churn. Further, in some embodiments, thechurn prediction may include a risk value indicating a likelihood of theuser to churn towards at least one of the interested product and theinterested service. The risk value may be determined, for example, basedon an affinity of the keyword representing the interested product and/orthe interested service.

Further, in some embodiments, the churn prediction may includeindication of at least one of the interested product and the interestedservice. Continuing the preceding example, the churn prediction mayinclude indication of iPhone, and in some cases, a risk value indicatinga likelihood of the user switching from the android phone to iPhone.

Accordingly, in some embodiments, the churn prediction may betransmitted to the requesting entity, such as a server computerincluding the CRM database. Accordingly, in some embodiments, the CRMdatabase may be further enriched by data indicative of churn and alikelihood of churn corresponding to users for each product and/orservice.

FIG. 5 illustrates a flow chart of a method 500 of correlating anonymoususer behavior data with data associated with known users according tosome embodiments. Accordingly, the method 500 may include a step 510 ofreceiving anonymous user behavior data corresponding to a user. Forinstance, the anonymous user behavior data may include a combination ofthe device data and demographic data. Further, the method 500 mayinclude a step 520 of comparing the anonymous user behavior data withdata of known users. For example, data of known users in the CRMdatabase may include demographic data along with device data.Accordingly, the device data and demographic data included in theanonymous user behavior data may be correlated with the correspondingdata of each of the known users in the CRM database.

Further, the method 500 may include a step 530 of associating theanonymous user behavior data with a known user based on a result of thecomparing. For example, based on the comparison, it may be determinedthat the device data and the demographic data included in the anonymoususer behavior data matches with that of the user than with that of otherusers in the CRM database. Accordingly, it may be determined that theanonymous user behavior data represents behavior of the user.Subsequently, the association may be stored in the CRM database forfurther use.

FIG. 6 a flow chart of a method 600 of providing anonymous user behaviordata according to some embodiments. The method 600 may include a step610 of receiving user data associated with a user from a requestingentity, such as the server computer including the CRM data. For example,the user data may include one or more of, but is not limited to,demographic data, the device data and so on. Further, the method 600 mayinclude a step 610 of comparing the user data with anonymous userbehavior data of a plurality of users. For instance, the platform mayinclude a database containing anonymous user behavior data of aplurality of users. However, the specific user associated with a givenanonymous user behavior data may not be known to the platform.Accordingly, the platform may compare the user data with anonymous userbehavior data of each user in the database in order to find a match.Accordingly, the method 600 may include a step 630 of identifyinganonymous user behavior data of the user based on a result of thecomparing. Thus, the platform may be able to identify an associationbetween anonymous user behavior data of a user with other data of theuser, such as that available in a CRM database.

IV. PLATFORM ARCHITECTURE

The user profile creation platform 100 may be embodied as, for example,but not be limited to, a website, a web application, a desktopapplication, and a mobile application compatible with a computingdevice. The computing device may comprise, but not be limited to, adesktop computer, laptop, a tablet, or mobile telecommunications device.Moreover, platform 100 may be hosted on a centralized server, such as,for example, a cloud computing service. Although methods 200 to 600 havebeen described to be performed by a computing device 1100, it should beunderstood that, in some embodiments, different operations may beperformed by different networked elements in operative communicationwith computing device 1100.

Embodiments of the present disclosure may comprise a system having amemory storage and a processing unit. The processing unit coupled to thememory storage, wherein the processing unit is configured to perform thestages of methods 200 to 600.

FIG. 11 is a block diagram of a system including computing device 1100.Consistent with an embodiment of the disclosure, the aforementionedmemory storage and processing unit may be implemented in a computingdevice, such as computing device 1100 of FIG. 11. Any suitablecombination of hardware, software, or firmware may be used to implementthe memory storage and processing unit. For example, the memory storageand processing unit may be implemented with computing device 1100 or anyof other computing devices 1118, in combination with computing device1100. The aforementioned system, device, and processors are examples andother systems, devices, and processors may comprise the aforementionedmemory storage and processing unit, consistent with embodiments of thedisclosure.

With reference to FIG. 11, a system consistent with an embodiment of thedisclosure may include a computing device, such as computing device1100. In a basic configuration, computing device 1100 may include atleast one processing unit 1102 and a system memory 1104. Depending onthe configuration and type of computing device, system memory 1104 maycomprise, but is not limited to, volatile (e.g. random access memory(RAM)), non-volatile (e.g. read-only memory (ROM)), flash memory, or anycombination. System memory 1104 may include operating system 1105, oneor more programming modules 1106, and may include a program data 1107.Operating system 1105, for example, may be suitable for controllingcomputing device 1100's operation. In one embodiment, programmingmodules 1106 may include affinity calculating modules, such as, forexample, webpage affinity calculation application 1120. Furthermore,embodiments of the disclosure may be practiced in conjunction with agraphics library, other operating systems, or any other applicationprogram and is not limited to any particular application or system. Thisbasic configuration is illustrated in FIG. 11 by those components withina dashed line 1108.

Computing device 1100 may have additional features or functionality. Forexample, computing device 1100 may also include additional data storagedevices (removable and/or non-removable) such as, for example, magneticdisks, optical disks, or tape. Such additional storage is illustrated inFIG. 11 by a removable storage 1109 and a non-removable storage 1110.Computer storage media may include volatile and nonvolatile, removableand non-removable media implemented in any method or technology forstorage of information, such as computer readable instructions, datastructures, program modules, or other data. System memory 1104,removable storage 1109, and non-removable storage 1110 are all computerstorage media examples (i.e., memory storage.) Computer storage mediamay include, but is not limited to, RAM, ROM, electrically erasableread-only memory (EEPROM), flash memory or other memory technology,CD-ROM, digital versatile disks (DVD) or other optical storage, magneticcassettes, magnetic tape, magnetic disk storage or other magneticstorage devices, or any other medium which can be used to storeinformation and which can be accessed by computing device 1100. Any suchcomputer storage media may be part of device 1100. Computing device 1100may also have input device(s) 1112 such as a keyboard, a mouse, a pen, asound input device, a touch input device, etc. Output device(s) 1114such as a display, speakers, a printer, etc. may also be included. Theaforementioned devices are examples and others may be used.

Computing device 1100 may also contain a communication connection 1116that may allow device 1100 to communicate with other computing devices1118, such as over a network in a distributed computing environment, forexample, an intranet or the Internet. Communication connection 1116 isone example of communication media. Communication media may typically beembodied by computer readable instructions, data structures, programmodules, or other data in a modulated data signal, such as a carrierwave or other transport mechanism, and includes any information deliverymedia. The term “modulated data signal” may describe a signal that hasone or more characteristics set or changed in such a manner as to encodeinformation in the signal. By way of example, and not limitation,communication media may include wired media such as a wired network ordirect-wired connection, and wireless media such as acoustic, radiofrequency (RF), infrared, and other wireless media. The term computerreadable media as used herein may include both storage media andcommunication media.

As stated above, a number of program modules and data files may bestored in system memory 1104, including operating system 1105. Whileexecuting on processing unit 1102, programming modules 1106 (e.g.,platform application 1120) may perform processes including, for example,one or more of methods 200 to 600's stages as described above. Theaforementioned process is an example, and processing unit 1102 mayperform other processes. Other programming modules that may be used inaccordance with embodiments of the present disclosure may includeelectronic mail and contacts applications, word processing applications,spreadsheet applications, database applications, slide presentationapplications, drawing or computer-aided application programs, etc.

Generally, consistent with embodiments of the disclosure, programmodules may include routines, programs, components, data structures, andother types of structures that may perform particular tasks or that mayimplement particular abstract data types. Moreover, embodiments of thedisclosure may be practiced with other computer system configurations,including hand-held devices, multiprocessor systems,microprocessor-based or programmable consumer electronics,minicomputers, mainframe computers, and the like. Embodiments of thedisclosure may also be practiced in distributed computing environmentswhere tasks are performed by remote processing devices that are linkedthrough a communications network. In a distributed computingenvironment, program modules may be located in both local and remotememory storage devices.

Furthermore, embodiments of the disclosure may be practiced in anelectrical circuit comprising discrete electronic elements, packaged orintegrated electronic chips containing logic gates, a circuit utilizinga microprocessor, or on a single chip containing electronic elements ormicroprocessors. Embodiments of the disclosure may also be practicedusing other technologies capable of performing logical operations suchas, for example, AND, OR, and NOT, including but not limited tomechanical, optical, fluidic, and quantum technologies. In addition,embodiments of the disclosure may be practiced within a general purposecomputer or in any other circuits or systems.

Embodiments of the disclosure, for example, may be implemented as acomputer process (method), a computing system, or as an article ofmanufacture, such as a computer program product or computer readablemedia. The computer program product may be a computer storage mediareadable by a computer system and encoding a computer program ofinstructions for executing a computer process. The computer programproduct may also be a propagated signal on a carrier readable by acomputing system and encoding a computer program of instructions forexecuting a computer process. Accordingly, the present disclosure may beembodied in hardware and/or in software (including firmware, residentsoftware, micro-code, etc.). In other words, embodiments of the presentdisclosure may take the form of a computer program product on acomputer-usable or computer-readable storage medium havingcomputer-usable or computer-readable program code embodied in the mediumfor use by or in connection with an instruction execution system. Acomputer-usable or computer-readable medium may be any medium that cancontain, store, communicate, propagate, or transport the program for useby or in connection with the instruction execution system, apparatus, ordevice.

The computer-usable or computer-readable medium may be, for example butnot limited to, an electronic, magnetic, optical, electromagnetic,infrared, or semiconductor system, apparatus, device, or propagationmedium. More specific computer-readable medium examples (anon-exhaustive list), the computer-readable medium may include thefollowing: an electrical connection having one or more wires, a portablecomputer diskette, a random access memory (RAM), a read-only memory(ROM), an erasable programmable read-only memory (EPROM or Flashmemory), an optical fiber, and a portable compact disc read-only memory(CD-ROM). Note that the computer-usable or computer-readable mediumcould even be paper or another suitable medium upon which the program isprinted, as the program can be electronically captured, via, forinstance, optical scanning of the paper or other medium, then compiled,interpreted, or otherwise processed in a suitable manner, if necessary,and then stored in a computer memory.

Embodiments of the present disclosure, for example, are described abovewith reference to block diagrams and/or operational illustrations ofmethods, systems, and computer program products according to embodimentsof the disclosure. The functions/acts noted in the blocks may occur outof the order as shown in any flowchart. For example, two blocks shown insuccession may in fact be executed substantially concurrently or theblocks may sometimes be executed in the reverse order, depending uponthe functionality/acts involved.

While certain embodiments of the disclosure have been described, otherembodiments may exist. Furthermore, although embodiments of the presentdisclosure have been described as being associated with data stored inmemory and other storage mediums, data can also be stored on or readfrom other types of computer-readable media, such as secondary storagedevices, like hard disks, solid state storage (e.g., USB drive), or aCD-ROM, a carrier wave from the Internet, or other forms of RAM or ROM.Further, the disclosed methods' stages may be modified in any manner,including by reordering stages and/or inserting or deleting stages,without departing from the disclosure.

All rights including copyrights in the code included herein are vestedin and the property of the Applicant. The Applicant retains and reservesall rights in the code included herein, and grants permission toreproduce the material only in connection with reproduction of thegranted patent and for no other purpose.

V. ASPECTS

The application includes at least the following aspects:

Aspect 1. A method of providing business intelligence based on userbehavior, wherein the method is a computer implemented method, themethod comprising:

a. receiving a user identifier associated with a user from a requestingentity;

b. identifying an anonymous identifier corresponding to the useridentifier;

c. retrieving anonymous user behavior data based on the anonymousidentifier; and

d. transmitting the anonymous user behavior data to the requestingentity.

Aspect 2. The method of aspect 1, wherein the requesting entity isconfigured for:

a. receiving the anonymous user behavior data corresponding to the user;and

b. appending the anonymous behavior data to data associated with theuser stored in a database.

Aspect 3. The method of aspect 1, wherein the requesting entity is aserver computer, wherein the data associated with the user is comprisedin a Customer Relationship Management (CRM) database executable on theserver computer.

Aspect 4. The method of aspect 1 further comprising:

a. identifying at least one of a product and a service used by the userbased on the user behavior data;

b. identifying at least one of an interested product and an interestedservice associated with the user based on the user behavior data; and

c. predicting a churn based on a comparison of the at least one of aproduct and a service with at least one of the interested product andthe interested service.

Aspect 5. The method of aspect 4 further comprising:

-   -   a. receiving a request for a churn prediction from the        requesting entity; and    -   b. transmitting a churn prediction based on the predicting.

Aspect 6. The method of aspect 5, wherein the churn prediction comprisesa risk value indicating a likelihood of the user to churn towards atleast one of the interested product and the interested service.

Aspect 7. The method of aspect 5, wherein the churn prediction comprisesindication of at least one of the interested product and the interestedservice.

Aspect 8. The method of aspect 1 further comprising an indication of atleast one keyword, wherein the anonymous user behavior data comprises anaffinity value corresponding to the at least one keyword.

Aspect 9. The method of aspect 1, wherein the anonymous identifier isidentified based on operating a one-way hash function on the useridentifier.

Aspect 10. The method of aspect 1, wherein retrieving the anonymous userbehavior data comprises retrieving data from a plurality of cookiescorresponding to a plurality of websites, wherein each cookie comprisesat least a portion of the anonymous user behavior data, wherein eachcookie is associated with the anonymous identifier.

Aspect 11. The method of aspect 1, wherein the anonymous user behaviordata is based on online activity of user.

Aspect 12. The method of aspect 11, wherein the anonymous user behaviordata comprises contextual data corresponding to the online activity,wherein the contextual data corresponds to at least one user device usedby the user to perform the online activity.

Aspect 13. The method of aspect 12, wherein the contextual datacomprises device data representing the at least one user device.

Aspect 14. The method of aspect 13, wherein the device data comprises atleast one of a device identifier associated with a user device, anetwork identifier associated with a communication network used forperforming the online activity, an Operating System (OS) identifier ofan OS installed on the user device and a browser identifier of a browserinstalled on the user device.

Aspect 15. The method of aspect 12, wherein the contextual datacomprises sensor data representing state of the at least one user deviceduring performance of the online activity.

Aspect 16. The method of aspect 1, wherein the anonymous user behaviordata comprises at least one of demographic data and psychographic dataof the user.

Aspect 17. The method of aspect 1, wherein the anonymous user behaviordata comprises at least one interest of the user.

Aspect 18. The method of aspect 17, wherein the anonymous user behaviordata comprises a plurality of keywords representing the at least oneinterest and a plurality of affinity values corresponding to theplurality of keywords.

Aspect 19. The method of aspect 2, wherein the data associated with theuser comprises data representing at least one of a product and a serviceassociated with the user.

Aspect 20. The method of aspect 2, wherein the data associated with theuser comprises offline data.

Aspect 21. A method of providing business intelligence based on userbehavior, wherein the method is a computer implemented method, themethod comprising:

a. receiving anonymous user behavior data corresponding to a user;

b. comparing the anonymous user behavior data with data of known users;and

c. associating the anonymous user behavior data with a known user basedon a result of the comparing.

Aspect 22. The method of aspect 21, wherein the anonymous user behaviordata is based on online activity of user.

Aspect 23. The method of aspect 22, wherein the anonymous user behaviordata comprises contextual data corresponding to the online activity,wherein the contextual data corresponds to at least one user device usedby the user to perform the online activity.

Aspect 24. The method of aspect 23, wherein the contextual datacomprises device data representing the at least one user device.

Aspect 25. The method of aspect 24, wherein the device data comprises atleast one of a device identifier associated with a user device, anetwork identifier associated with a communication network used forperforming the online activity, an Operating System (OS) identifier ofan OS installed on the user device and a browser identifier of a browserinstalled on the user device.

Aspect 26. The method of aspect 23, wherein the contextual datacomprises sensor data representing state of the at least one user deviceduring performance of the online activity.

Aspect 27. The method of aspect 21, wherein the anonymous user behaviordata comprises at least one of demographic data and psychographic dataof the user.

Aspect 28. The method of aspect 21, wherein the anonymous user behaviordata comprises at least one interest of the user.

Aspect 29. The method of aspect 28, wherein the anonymous user behaviordata comprises a plurality of keywords representing the at least oneinterest and a plurality of affinity values corresponding to theplurality of keywords.

Aspect 30. The method of aspect 29 further comprising:

a. receiving a user identifier associated with the user;

b. identifying an anonymous identifier corresponding to the useridentifier; and

c. retrieving the anonymous user behavior data based on the anonymousidentifier.

Aspect 31. The method of aspect 21, wherein data of known userscomprises data representing at least one of a product and a serviceassociated with known users.

Aspect 32. The method of aspect 31 further comprising predicting a churnbased on a comparison of the anonymous user behavior data with datarepresenting at least one of the product and the service, wherein theanonymous user behavior data indicates an interest of the user towardsat least one of another product and another service.

Aspect 33. The method of aspect 21 further comprising:

a. identifying at least one of a product and a service used by the userbased on the user behavior data;

b. identifying at least one of an interested product and an interestedservice associated with the user based on the user behavior data; and

c. predicting a churn based on a comparison of the at least one of aproduct and a service with at least one of the interested product andthe interested service.

Aspect 34. The method of aspect 21, wherein the data of known users iscomprised in a Customer Relationship Management (CRM) database.

Aspect 35. The method of aspect 22, wherein the anonymous user behaviordata comprises a plurality of Universal Resource Locators (URLs)associated with webpages visited by the user and a correspondingplurality of time values representing the times when the webpages werevisited.

Aspect 36. A method of providing business intelligence based on userbehavior, wherein the method is a computer implemented method, themethod comprising:

a. receiving user data associated with a user;

b. comparing user data with anonymous user behavior data of a pluralityof users; and

c. identifying anonymous user behavior data of the user based on aresult of the comparing.

Aspect 37. A system for providing business intelligence based on userbehavior, the system comprising:

a. a communication module configured to:

i. receive a user identifier associated with the user from a requestingentity; and

ii. transmit anonymous user behavior data to the requesting entity;

b. a processing module coupled to the communication module, wherein theprocessing module is configured to identify the anonymous identifiercorresponding to the user identifier; and

c. a storage module coupled to the processing module, wherein thestorage module is configured to retrieve anonymous user behavior databased on an anonymous identifier.

Aspect 38. The system of aspect 37, wherein the requesting entity isconfigured to:

a. receive the anonymous user behavior data corresponding to the user;and

b. append the anonymous behavior data to data associated with the userstored in a database.

Aspect 39. The system of aspect 37, wherein the requesting entity is aserver computer, wherein the data associated with the user is comprisedin a Customer Relationship Management (CRM) database executable on theserver computer.

Aspect 40. The system of aspect 37, wherein the processing module isfurther configured to:

a. identify at least one of a product and a service used by the userbased on the user behavior data;

b. identify at least one of an interested product and an interestedservice associated with the user based on the user behavior data; and

c. predict a churn based on a comparison of the at least one of aproduct and a service with at least one of the interested product andthe interested service.

Aspect 41. The system of aspect 40, wherein the communication module isfurther configured to:

a. receive a request for a churn prediction from the requesting entity;and

b. transmit a churn prediction based on the predicting.

Aspect 42. The system of aspect 41, wherein the churn predictioncomprises a risk value indicating a likelihood of the user to churntowards at least one of the interested product and the interestedservice.

Aspect 43. The system of aspect 41, wherein the churn predictioncomprises indication of at least one of the interested product and theinterested service.

Aspect 44. The system of aspect 37, wherein the communication module isfurther configured to receive an indication of at least one keyword,wherein the anonymous user behavior data comprises an affinity valuecorresponding to the at least one keyword.

Aspect 45. The system of aspect 37, wherein the anonymous identifier isidentified based on operating a one-way hash function on the useridentifier.

Aspect 46. The system of aspect 37, wherein retrieving the anonymoususer behavior data comprises retrieving data from a plurality of cookiescorresponding to a plurality of websites, wherein each cookie comprisesat least a portion of the anonymous user behavior data, wherein eachcookie is associated with the anonymous identifier.

Aspect 47. The system of aspect 37, wherein the anonymous user behaviordata is based on online activity of user.

Aspect 48. The system of aspect 47, wherein the anonymous user behaviordata comprises contextual data corresponding to the online activity,wherein the contextual data corresponds to at least one user device usedby the user to perform the online activity.

Aspect 49. The system of aspect 48, wherein the contextual datacomprises device data representing the at least one user device.

Aspect 50. The system of aspect 49, wherein the device data comprises atleast one of a device identifier associated with a user device, anetwork identifier associated with a communication network used forperforming the online activity, an Operating System (OS) identifier ofan OS installed on the user device and a browser identifier of a browserinstalled on the user device.

Aspect 51. The system of aspect 48, wherein the contextual datacomprises sensor data representing state of the at least one user deviceduring performance of the online activity.

Aspect 52. The system of aspect 37, wherein the anonymous user behaviordata comprises at least one of demographic data and psychographic dataof the user.

Aspect 53. The system of aspect 37, wherein the anonymous user behaviordata comprises at least one interest of the user.

Aspect 54. The system of aspect 53, wherein the anonymous user behaviordata comprises a plurality of keywords representing the at least oneinterest and a plurality of affinity values corresponding to theplurality of keywords.

Aspect 55. The system of aspect 38, wherein the data associated with theuser comprises data representing at least one of a product and a serviceassociated with the user.

Aspect 56. The system of aspect 38, wherein the data associated with theuser comprises offline data.

VI. CLAIMS

While the specification includes examples, the disclosure's scope isindicated by the following claims. Furthermore, while the specificationhas been described in language specific to structural features and/ormethodological acts, the claims are not limited to the features or actsdescribed above. Rather, the specific features and acts described aboveare disclosed as example for embodiments of the disclosure.

Insofar as the description above and the accompanying drawing discloseany additional subject matter that is not within the scope of the claimsbelow, the disclosures are not dedicated to the public and the right tofile one or more applications to claims such additional disclosures isreserved.

The following is claimed:
 1. A method of providing business intelligencebased on user behavior, wherein the method is a computer implementedmethod, the method comprising: a. receiving a user identifier associatedwith a user from a requesting entity; b. identifying an anonymousidentifier corresponding to the user identifier; c. retrieving anonymoususer behavior data based on the anonymous identifier; and d.transmitting the anonymous user behavior data to the requesting entity.2. The method of claim 1, wherein the requesting entity is configuredfor: a. receiving the anonymous user behavior data corresponding to theuser; and b. appending the anonymous behavior data to data associatedwith the user stored in a database.
 3. The method of claim 1, whereinthe requesting entity is a server computer, wherein the data associatedwith the user is comprised in a Customer Relationship Management (CRM)database executable on the server computer.
 4. The method of claim 1further comprising: a. identifying at least one of a product and aservice used by the user based on the user behavior data; b. identifyingat least one of an interested product and an interested serviceassociated with the user based on the user behavior data; and c.predicting a churn based on a comparison of the at least one of aproduct and a service with at least one of the interested product andthe interested service.
 5. The method of claim 4 further comprising: a.receiving a request for a churn prediction from the requesting entity;and b. transmitting a churn prediction based on the predicting.
 6. Themethod of claim 5, wherein the churn prediction comprises a risk valueindicating a likelihood of the user to churn towards at least one of theinterested product and the interested service.
 7. The method of claim 5,wherein the churn prediction comprises indication of at least one of theinterested product and the interested service.
 8. The method of claim 1further comprising an indication of at least one keyword, wherein theanonymous user behavior data comprises an affinity value correspondingto the at least one keyword.
 9. The method of claim 1, wherein theanonymous identifier is identified based on operating a one-way hashfunction on the user identifier.
 10. The method of claim 1, whereinretrieving the anonymous user behavior data comprises retrieving datafrom a plurality of cookies corresponding to a plurality of websites,wherein each cookie comprises at least a portion of the anonymous userbehavior data, wherein each cookie is associated with the anonymousidentifier.
 11. The method of claim 1, wherein the anonymous userbehavior data is based on online activity of user.
 12. The method ofclaim 11, wherein the anonymous user behavior data comprises contextualdata corresponding to the online activity, wherein the contextual datacorresponds to at least one user device used by the user to perform theonline activity.
 13. The method of claim 12, wherein the contextual datacomprises device data representing the at least one user device.
 14. Themethod of claim 13, wherein the device data comprises at least one of adevice identifier associated with a user device, a network identifierassociated with a communication network used for performing the onlineactivity, an Operating System (OS) identifier of an OS installed on theuser device and a browser identifier of a browser installed on the userdevice.
 15. The method of claim 12, wherein the contextual datacomprises sensor data representing state of the at least one user deviceduring performance of the online activity.
 16. The method of claim 1,wherein the anonymous user behavior data comprises at least one ofdemographic data and psychographic data of the user.
 17. The method ofclaim 1, wherein the anonymous user behavior data comprises at least oneinterest of the user.
 18. The method of claim 17, wherein the anonymoususer behavior data comprises a plurality of keywords representing the atleast one interest and a plurality of affinity values corresponding tothe plurality of keywords.
 19. A method of providing businessintelligence based on user behavior, wherein the method is a computerimplemented method, the method comprising: a. receiving anonymous userbehavior data corresponding to a user; b. comparing the anonymous userbehavior data with data of known users; and c. associating the anonymoususer behavior data with a known user based on a result of the comparing.20. A system for providing business intelligence based on user behavior,the system comprising: a. a communication module configured to: i.receive a user identifier associated with the user from a requestingentity; and ii. transmit anonymous user behavior data to the requestingentity; b. a processing module coupled to the communication module,wherein the processing module is configured to identify the anonymousidentifier corresponding to the user identifier; and c. a storage modulecoupled to the processing module, wherein the storage module isconfigured to retrieve anonymous user behavior data based on ananonymous identifier.